課程資訊
課程名稱
資料結構
Data Structures 
開課學期
104-1 
授課對象
工學院  工程科學及海洋工程學系  
授課教師
張恆華 
課號
ESOE2012 
課程識別碼
505 22240 
班次
 
學分
全/半年
半年 
必/選修
必修 
上課時間
星期五2,3,4(9:10~12:10) 
上課地點
工科204 
備註
資訊計算組必修。
總人數上限:51人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1041ESOE2012_ds 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

本課程介紹基礎的資料結構與相關演算法設計及其應用。我們將探討一些基本和常見的儲存資料結構,諸如陣列、連結串列、堆疊、佇列、樹狀結構、圖形、排序和抽像資料型態。教授重點將強調各種不同資料結構的設計、實用、試驗和評估。 

課程目標
本課程的主旨乃是給予學生在資料結構及其相關的設計與分析技術上有一個基本知識和了解。課程目標在提昇學生在資料結構設計上的能力,分析各種不同結構的好壞俾使撰寫的程式更加精進和有效率,並學會選擇最適宜的資料結構來撰寫程式。 
課程要求
修課學生需修畢計算機概論和程式語言(C, C++, or Java)。 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
Frank M. Carrano, Timothy Henry, Data Abstraction & Problem Solving with C++, 6th edition, Pearson, 2013. 
參考書目
M. T. Goodrich, R. Tamassia, and D. M. Mount, Data Structures and Algorithms in C++, 2nd ed., John Wiley & Sons, 2011.
William Ford, William R. Topp, Data Structures with Java, Prentice Hall, 2005.
 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
第1週
9/18  Reading -> C.H.: pp. 709~720, pp. 25~41 
第2週
9/25  Reading -> C.H.: pp. 720~734, pp. 141~156 
第3週
10/02  Reading -> C.H.: pp. 735~744, pp. 41~51, pp. 55~64, pp. 251~264, pp. 439~447 
第5週
10/16  Reading -> C.H.: pp. 71~91, pp. 119~138, pp. 157~179, pp. 277~287, pp. 289~310 
第6週
10/23  Reading -> C.H.: pp. 64~70, pp. 92~112, pp. 357~391 
第7週
10/30  Reading -> C.H.: pp. 217~242, pp. 313~325, pp. 397~402 
第8週
11/06  Reading -> C.H.: pp. 549~555, pp. 568~586, pp. 449~457 
第10週
11/20  Reading -> C.H.: pp. 457~466, pp. 403~413 
第11週
11/27  Reading -> C.H.: pp. 527~542, pp. 466~467, pp. 479~495 
第12週
12/04  Reading -> C.H.: pp. 467~473, pp. 495~512, pp. 591~592, pp. 609~616 
第13週
12/11  Reading -> C.H.: pp. 627~637 
第14週
12/18  Reading -> C.H.: pp. 637~639, pp. 642~651, pp. 329~333, pp. 335~342, pp. 543~546 
第15週
12/25  Reading -> C.H.: pp. 342~351 
第17週
1/08  Reading -> C.H.: pp. 351~354